package com.javaweb.system.controller;


import com.javaweb.common.utils.JsonResult;
import com.javaweb.system.entity.User;
import com.javaweb.system.query.UserQuery;
import com.javaweb.system.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import com.javaweb.system.common.BaseController;

/**
 * <p>
 * 后台用户管理表 前端控制器
 * </p>
 *
 * @author 鲲鹏
 * @since 2020-10-30
 */
@RestController
@RequestMapping("/user")
public class UserController extends BaseController {

    @Autowired
    private IUserService userService;

    /**
     * 获取用户列表
     *
     * @param userQuery 查询条件
     * @return
     */
    @GetMapping("/index")
    public JsonResult index(UserQuery userQuery) {
        return userService.getList(userQuery);
    }

    /**
     * 添加用户
     *
     * @param entity 实体对象
     * @return
     */
    @PostMapping("/add")
    public JsonResult add(@RequestBody User entity) {
        return userService.edit(entity);
    }

    /**
     * 编辑用户
     *
     * @param entity 实体对象
     * @return
     */
    @PutMapping("/edit")
    public JsonResult edit(@RequestBody User entity) {
        return userService.edit(entity);
    }

    /**
     * 设置状态
     *
     * @param userId
     * @param entity
     * @return
     */
    @PutMapping("/status/{userId}")
    public JsonResult status(@PathVariable("userId") Integer userId, @RequestBody User entity) {
        return null;
    }

    /**
     * 删除用户
     *
     * @param userId 用户ID
     * @return
     */
    @DeleteMapping("/delete/{userId}")
    public JsonResult delete(@PathVariable("userId") Integer userId) {
        return userService.deleteById(userId);
    }

//    /**
//     * 批量删除
//     *
//     * @param userIds 用户ID集合
//     * @return
//     */
//    @DeleteMapping("/batchDelete")
//    public JsonResult batchDelete(@RequestBody Integer[] userIds) {
//        return userService.deleteByIds(userIds);
//    }


}
